數據湖屋是一種數據管理范式,將數據倉庫和數據湖功能結合到統一平臺,用于優化結構化和非結構化數據存儲。雖然數據倉庫長期以來一直是存儲結構化數據的答案,但近幾十年來數據的爆炸式增長導致數據湖存儲了大量獨特和非結構化數據類型。直到最近,領先的數據庫軟件和存儲管理公司才開始開發和銷售最新的混合解決方案,用于管理組織擁有的數據。
數據管道的演變:從倉庫到數據湖
數據湖的發展源于企業組織和數據中心管理不斷增加的數據量和不同類型數據方式的演變。
在了解數據湖之前,組織必須首先熟悉其前身:數據倉庫和數據湖。
什么是數據倉庫?
自 20 世紀 80 年代以來,數據倉庫一直是專門用于存儲用于報告和商業智能(BI) 的結構化數據的存儲庫。標準數據倉庫接收通過提取、轉換和加載(ETL) 軟件過濾的外部和運營數據,該軟件可高效地將結構化數據轉換并存儲在相同數據格式的存儲庫中。
什么是數據湖?
大約十年前,Pentaho 首席技術官 James Dixon 創造了“數據湖”一詞來描述以原始格式存儲數據的存儲庫。與存儲結構化數據的數據倉庫不同,數據湖包含各種結構化、半結構化和非結構化數據和類型。
雖然數據湖在許多企業用例中越來越受歡迎,但它最適合用于數據科學應用程序的驗證。相比之下,其他數據湖內容則通過 ETL 解決方案傳輸,以用于數據倉庫或實時數據庫。
數據倉庫和數據湖的問題
數據倉庫問題:僵化和專有
由于數據倉庫遵循嚴格的專有格式,因此它們無法支持新舊數據類型的混合,包括視頻、音頻、流媒體和深度學習模型,如人工智能 ( AI ) 和機器學習 ( ML )。
這種無法管理非結構化數據的情況迫使企業組織提取和存儲多余的數據,以形成數據湖。
數據湖問題:瘋狂且不可靠
盡管數據湖提供非結構化數據存儲,但它卻以不可靠的數據沼澤而聞名。相對于數據倉庫的預期效率,數據湖往往表現不佳,難以支持 BI 應用程序。
同時使用數據倉庫和數據湖:重復
自數據湖出現以來,組織一直試圖通過兩個不同的系統和團隊來利用倉庫和數據湖的功能。傳統的 IT 專業人員和數據庫管理員管理倉庫,而數據科學家則專注于利用數據湖的潛力。
對于組織來說,數據倉庫和數據湖的共存通常會導致數據重復、流程重復和成本增加。數據管理員解決這些問題的最新范例是數據湖屋。
什么是數據湖屋?
數據湖屋包含數據倉庫和數據湖的組件,為管理員提供用于 BI、數據科學、深度學習和流分析的單一數據存儲。借助數據湖屋,管理員可以使用類似于傳統數據倉庫管理的界面和數據治理來管理各種原始數據。
數據湖普遍接受的功能包括:
- 所有數據(結構化、半結構化和非結構化)都存儲在一個存儲庫中
- 端到端流式傳輸,提供來自數據存儲庫的實時洞察
- 管理員可直接訪問數據并執行讀寫操作
- 分離計算和存儲,實現可擴展性和多用途
- 建立數據治理的架構支持
- 索引和數據壓縮以提高查詢速度
- 原子性、并發性、隔離性和持久性 (ACID) 事務支持
通過將多個系統(數據倉庫和數據湖)整合到數據湖中,組織可以簡化模式和數據治理的管理,并減少冗余、重復流程和管理成本。與云時代的數據湖一樣,數據湖提供低成本存儲和廣泛的可擴展性。
Databricks 的信息圖展示了數據倉庫、數據湖和數據湖屋之間的差異。
Data Lakehouse:兩全其美
數據湖屋為組織的數據管理利益相關者之間的協作提供了橋梁。盡管這是一個較新的概念,但人們對管理結構化和非結構化數據的統一解決方案的希望仍然存在。在這個新興市場中,幾家知名供應商正在構建他們的數據湖屋功能。